Base Layout
Base Layout is the foundational structure for organizing content within the platform, providing a consistent and user-friendly experience.
#Composition
The Base Layout comprises the following elements, each serving a specific purpose:
#Header
- Purpose: Orients the user and facilitates navigation.
- Contents:
- Page Title: Clearly communicates the current page's content, using the same label as the corresponding side navigation item. Keep it concise and informative (e.g., "Accessibility Overview").
- Contextual Actions (Optional): Include relevant actions like search, export, or other context-specific tools. Prioritize the most important actions and use progressive disclosure to reveal additional options when needed.
#Navigation
- Purpose: Guides users through the platform's content and features.
- Types:
- Breadcrumbs: Always present if the current page is not a top-level item in the Side Navigation.
- Side Navigation: The primary navigation method for complex hierarchies with multiple sections and subsections.
- Horizontal Navigation: A secondary navigation option suitable for simpler hierarchies with fewer top-level categories.
#Main content area:
- Purpose: Houses the page's core content.
- Implementation:
- Grid and Grid.Section: Employ the
Grid
component for overall layout, dividing the area into rows and columns. UseGrid.Section
to define distinct content sections within the grid. - Content.Layout: Utilize
Content
to further structure and organize content within each Grid.Section. - Layout Principles: Adhere to established visual design principles, such as hierarchy, alignment, and spacing, to create a clear and aesthetically pleasing presentation.
- Grid and Grid.Section: Employ the
#Examples
#Default
The default variant includes breadcrumbs for navigation hierarchy and a content container typically used to display a card, paragraph or a block of text. This variant is suitable for pages with clear hierarchical structures and a primary focus on textual content.
<BaseLayout
breadcrumbs={{
items: [
{ title: "Siteimprove", url: "https://siteimprove.com/" },
{ title: "Github", url: "https://github.com/" },
{ title: "Wikipedia", url: "https://wikipedia.org/" },
],
"aria-label": "breadcrumbs",
}}
id="content"
>
"Social Media that have referred visitors to your website. Expand the table for referring social
media pages, trend graphs, and entry pages.",
</BaseLayout>
#Usage without breadcrumbs
This variant excludes breadcrumbs and is ideal for pages where navigation hierarchy is less critical or for platform with alternative navigation methods, e.g Side Navigation.
<BaseLayout id="content">
"Social Media that have referred visitors to your website. Expand the table for referring social
media pages, trend graphs, and entry pages.",
</BaseLayout>
#Usage with page header
This variant incorporates a prominent page header, often including a title and content. This is beneficial for pages requiring a strong visual emphasis on the page title and textual content.
Data Retention
<BaseLayout
pageHeaderProps={{
title: "Data Retention",
}}
breadcrumbs={{
items: [
{ title: "Siteimprove", url: "https://siteimprove.com/" },
{ title: "Github", url: "https://github.com/" },
{ title: "Wikipedia", url: "https://wikipedia.org/" },
],
"aria-label": "breadcrumbs",
}}
id="content"
>
"Data older than the chosen retention period will be deleted forever and cannot be retrieved."
</BaseLayout>
#Properties
Property | Description | Defined | Value |
---|---|---|---|
idRequired | string ID for the main component of base-layout | ||
childrenOptional | element elements to populate the base layout | ||
object Breadcrumbs to be displayed for navigation | |||
pageHeaderPropsOptional | object optional extra properties for the page header | ||
aria-labelOptional | string | ||
pickersOptional | element |
#Guidelines
#Best practices
#Do not use when
#Accessibility
Explore detailed guidelines for this component: Accessibility Specifications